package repository

import (
	"context"
	"github.com/starmotioncf/common/region"
	"github.com/starmotioncf/soutchatinternal/model"
)

type CountryRepository interface {
	// Get 获取国家信息
	Get(ctx context.Context, code string) (m *model.Country, err error)
	// GetByArea 通过area获取国家信息
	GetByArea(ctx context.Context, area int) (m *model.Country, err error)
	// GetByRegion 通过region获取国家列表
	GetByRegion(ctx context.Context, rgn region.Region) (m []*model.Country, err error)
	// GetAll 获取所有可用国家列表
	GetAll(ctx context.Context) (m []*model.Country, err error)
}
